package com.study.testTryWith;

import java.util.Random;

import com.study.bloomFilter.error.BloomFilterException;

/**
 * 
 * @描述: try-with-resource Resource的定义：所有实现了 java.lang.AutoCloseable 接口（其中，它包括实现了 java.io.Closeable 的所有对象），可以使用作为资源
 * @版权: Copyright (c) 2020 
 * @公司: 
 * @作者: 严磊
 * @版本: 1.0 
 * @创建日期: 2020年5月31日 
 * @创建时间: 上午11:49:38
 */
public class Resource implements AutoCloseable
{
    public void hello(boolean throwException) {
        System.out.println("hello-func-start");
        if(throwException)
        {
            throw new BloomFilterException("测试执行过程抛出异常");
        }
        System.out.println("hello-func-end");
    }

    @Override
    public void close() throws Exception
    {
        System.out.println("Resource is closed -func-start");
        Random random = new Random();
        int ran_int = random.nextInt();
        if(ran_int!=0)
        {
            throw new BloomFilterException("测试资源关闭时抛出异常");
        }
        System.out.println("Resource is closed -func-end");
    }
    
}
